package com.xmmj.baselibrary.widget.wheelview

import kotlin.jvm.JvmOverloads

/**
 * WheelView 的适配器类
 *
 * @param <T>
 * 元素类型
</T> */
class ArrayWheelAdapter<T> @JvmOverloads constructor(
    private val items: ArrayList<T>,
    private val length: Int = DEFAULT_LENGTH
) : WheelAdapter {

    override fun getItem(index: Int): String? {
        //如果这个索引值合法, 就返回 item_basket_career_floater_body 数组对应的元素的字符串形式
        return if (index >= 0 && index < items.size) {
            items[index].toString()
        } else null
    }

    override fun getItemsCount(): Int {
        //返回 item_basket_career_floater_body 数组的长度
        return items.size
    }

    override fun getMaximumLength(): Int {
        //返回 item_basket_career_floater_body 元素的宽度
        return length
    }

    companion object {
        const val DEFAULT_LENGTH = -1
    }
}